OMPT: An OpenMP Tools Application Programming Interface for Performance Analysis
نویسندگان
چکیده
A shortcoming of OpenMP standards to date is that they lack an application programming interface (API) to support construction of portable, efficient, and vendor-neutral performance tools. To address this issue, the tools working group of the OpenMP Language Committee has designed OMPT—a performance tools API for OpenMP. OMPT enables performance tools to gather useful performance information from applications with low overhead and to map this information back to a user-level view of applications. OMPT provides three principal capabilities: (1) runtime state tracking, which enables a sampling-based performance tool to understand what an application thread is doing, (2) callbacks and inquiry functions that enable sampling-based performance tools to attribute application performance to complete calling contexts, and (3) additional callback notifications that enable construction of more full-featured monitoring capabilities. The earnest hope of the tools working group is that OMPT be adopted as part of the OpenMP standard and supported by all standard-compliant OpenMP implementations.
منابع مشابه
Openmp Technical Report 2 on the Ompt Interface This Technical Report Specifies Ompt: an Openmp Tools Application Programming Interface for Performance Analysis Tools Application Programming Interface for Performance Analysis , and Other Members of the Openmp Tools Working Group
This technical report describes possible future directions or extensions to the OpenMP Specification. The goal of this technical report is to build more widespread existing practice for an expanded OpenMP. It gives advice on extensions or future directions to those vendors who wish to provide them possibly for trial implementation, allows OpenMP to gather early feedback, support timing and sche...
متن کاملFalse Sharing Detection in OpenMP Applications Using OMPT API
Writing a parallel shared memory application that scales well on the future multi-core processors is a challenging task. The contention among shared resources increases as the number of threads increases. This may cause a false sharing problem, which can degrade the performance of an application. OpenMP Tools (OMPT) [2]a performance tool APIs for OpenMPenables performance tools to gather useful...
متن کاملTowards a Performance Tool Interface for OpenMP: An Approach Based on Directive Rewriting
In this article we propose a “standard” performance tool interface for OpenMP, similar in spirit to the MPI profiling interface in its intent to define a clear and portable API that makes OpenMP execution events visible to performance libraries. When used together with the MPI profiling interface, it also allows tools to be built for hybrid applications that mix shared and distributed memory pr...
متن کاملA Performance Monitoring Interface for OpenMP
This paper reports on efforts to define a performance monitoring interface for OpenMP that merges the OMPI and POMP prototype interfaces developed in the past year. The primary goal is to define a clear and portable API for OpenMP that makes execution events visible to runtime monitoring tools, primarily tools for performance measurement. The proposed specification is presented, covering many r...
متن کاملOpen Source Task Profiling by Extending the OpenMP Runtime API
The introduction of tasks in the OpenMP programming model brings a new level of parallelism. This also creates new challenges with respect to its meanings and applicability through an event-based performance profiling. The OpenMP Architecture Review Board (ARB) has approved an interface specification known as the “OpenMP Runtime API for Profiling” to enable performance tools to collect performa...
متن کامل